﻿function RefreshDrugNotificationGrid() {
    var g = Ext.getCmp('Default.grid.notifications_ID');
    g.store.load();
};

Ext.define('Default.grid.notifications', {
    extend: 'Ext.grid.GridPanel',
    width: "100%",
    collapsible: false,
    id: 'Default.grid.notifications_ID',
    region: 'center',
    margins: '0 0 0 0',
    filtrID: '',
    store: new Storage.notificationStore(), // Our store
    tbar: [
          { xtype: 'textfield', emptyText: 'Введите МНН,наименование заказчика или номер заказа', id: 'txtNotificationContentInfo', width: 397 },
          { xtype: 'button', text: 'Найти', handler: RefreshDrugNotificationGrid }
        ],

    columns: [
    		            { dataIndex: 'NotificationNumber', width: 150, header: 'Номер заявки' },
                        { dataIndex: 'iPublishDate', renderer: grid_notification_dayRender, width: 90, header: 'Дата публикации' },
                        { dataIndex: 'NotificationCommission.iP2Date', renderer: grid_notification_dayRender, width: 90, header: 'Рассмотрение заявки' },
                        { dataIndex: 'Order.OrderOrganization.FactualAddress.DictionaryFactualAddressRegion.fullName', width: 120, header: 'Регион' },
                        { dataIndex: 'OrderName', width: 300, header: 'Содержание заказа' },
                        { dataIndex: 'MaxPrice', width: 100, renderer: grid_notification_maxPrice, header: 'Сумма лота' },
                        { dataIndex: 'PlacingWay.Name', width: 150, header: 'Способ размещения' },
                        { dataIndex: 'Order.OrderOrganization.FullName', width: 300, header: 'Заказчик' },
                        { dataIndex: 'Order.OrderOrganization.FactualAddress.AddressLine', width: 300, header: 'Адрес заказчика' }
            ],
    initComponent: function () {
        this.listeners = {
            'cellclick':
                        { fn: function (grid, rowIndex, columnIndex, e) {
                            var w = new Ext.Window({
                                title: 'Titl',
                                modal: true,
                                width: 900,                                
                                closeAction: 'destroy',
                                height: 600

                            });
                            //воткнуть в него контрол с редактором
                            var c = new Default.panel.notificationEditor({ data: e.data });
                            w.add(c);
                            w.show();
                        }
                        }
        };

        //считываение параметров загрузки 
        this.imLoad = function (grid, operation) {
            var r = Ext.getCmp(Ext.getCmp('Default.grid.notifications_ID').filtrID);
            var params = r.getValue();
            this.loadParams = params;
            this.loadParams["ContentInfo"] = Ext.getCmp('txtNotificationContentInfo').getValue();
            operation.params = { args: Ext.encode(this.loadParams) };
        };

        this.store.loadParams = {};

        this.store.pageSize = Global_visualConfig.getNotificationPageSize();

        this.store.on("beforeload", this.imLoad);

        Ext.apply(this, {});
        Default.grid.notifications.superclass.initComponent.apply(this, arguments);


    }
});


function grid_notification_dayRender(p, r, o) {
    var dt = new Date(p);
    return Ext.Date.format(dt, "d.m.Y");
}


function grid_notification_maxPrice(p, r, o) {
    var d = getNumberAsMoney(p);
    return d;
}



